home *** CD-ROM | disk | FTP | other *** search
- /*** Information about MUI Custom Classes $VER: 0.8 ***/
-
-
- - Preface:
-
- You should *only* make MCCs when you intend to release a custom class
- to the public and you have to document its interface. You should *not*
- make MCCs for classes which are only used by yourself. If you need a
- class in different executables, you may put this class into an
- external library to reuse the code.
-
- So again... a xyz.mcc needs to be public and needs to have its
- interface well documented, otherwise it shouldnt be a public xyz.mcc.
- If you don't want others to use your classes, dont make them as MCCs!
-
-
-
- - Info:
-
- * to register
-
- 1) At first send *only* information to about what kind of class you
- are writing. A short description is fine.
-
- 2) Ask yourself if the class should be made publically,
- is there an *interest*?
- All new classes *should* be discussed in the MUI mailing list:
- mui@sunsite.Informatik.RWTH-Aachen.DE !
-
- 3) If you don't know your MUI serial nr (4 digits), ask me!
-
- 4) Create Autodocs, Includes and an example for your class,
- test it with the latest MUI release, Enforcer and Mungwall or
- PoolWatch!
-
- 5) Make a list of _all_ IDs the class is using, this means all
- public and private ones! Furthermore the config IDs which are
- used by the MCC and the MCP. Create a *Registration Report*!
-
- 6) Create a archive with:
- - class, readme
- - autodocs, C includes
- - demo, demo source
- - Registration Report
- > send it to: mccreg@sasg.com
-
- * Registration Report
-
- ...looks like this:
-
- MCC Tron -- Registration Report
-
- MCC Tron is (c) 1996 by Klaus 'kmel' Melchior
-
-
- Classname:
-
- Tron.mcc
- Tron.mcp
-
- Public:
-
- MUIM_Tron_Demo 0x8002000b
- MUIA_Tron_Running 0x80020040
-
- Private:
-
- MUIA_Tron_PenSpec1 0x80020043
- MUIA_Tron_PenSpec2 0x8002003e
- MUIA_Tron_PenSpecB 0x80020065
- MUIA_Tron_Sample 0x8002003f
- MUIA_Tron_Speed 0x80020042
-
- Config:
-
- MUICFG_Tron_Pen1 0x80020005
- MUICFG_Tron_Pen2 0x80020006
- MUICFG_Tron_PenB 0x8002000c
- MUICFG_Tron_Speed 0x80020007
-
-
- MCC END
-
- * to get an example C source for MCCs and MCPs
-
- > write to: mccreg@sasg.com
- > or better, take it from aminet: dev/mui/MCC_Tron0_8.lha
-
-
-
- - More Info:
-
- * Public name for the custom class.
-
- Note that you *must* register public names with the author of MUI. All
- unregistered public classes are promised to go on a builtin blacklist
- and will fail with future versions of MUI!
-
-
- * Uniqueness.
-
- I suggest a format like this: 1441_Toolbar.mcc
- ie 4-digit serial number, followed by an underscore, followed by a
- somewhat meaningfull name. This fixed format allows me to handle these
- classes in a preferences editor some day.
-
-
- * Private custom classes.
-
- Private custom classes need to be placed in a 'MUI/' subdir of your
- applications main directory. MUI will find it there if you simply do a
- MUI_NewObject("1441_Toolbar.mcc"). Do not install them in 'MUI:Libs/'!
-
-
- * Attributes and methods for the new class.
-
- Your tags have to be named MUI(A/M)_<classname>_<foobar>. The upper
- sixteen bits of your tag values need to be (TAG_USER | ( <your MUI
- serial Nr> << 16 )) Again, classes with invalid tag specs are promised
- to go on the blacklist. This implies that you have to be a registered
- MUI user if you want to distribute public classes.
-
- The first ID tag is used for internal purpose, so you don't have to
- use it!
-
- Example:
-
- If your serial number is 4711 (decimal):
-
- 4711 = 0x1267
- tagbase: 0x9267xxxx
- First usable ID: 0x92670001
- last: 0x9267ffff
-
-
- * Config IDs
-
- Also the IDs to store configuration data of you MCP have to be named
- MUICFG_<classname>_<foobar>, these are private at normal conditions.
- The upper sixteen bits of your IDs need to be (TAG_USER | ( <your MUI
- serial Nr> << 16 )), as you IDs.
-
- The first config ID is used for internal purpose, so you don't have to
- use it!
-
- Example:
-
- 4711 = 0x1267
- tagbase: 0x9267xxxx
- First usable config ID: 0x92670001
- last: 0x9267ffff
-
- > WARNING: Don't use your config IDs twice, nor use any old config ID!
-
-
- * File specification:
-
- - Custom class header files should have a "_mcc.h" appended and should
- be place in 'Include:mui/'!
-
- - Autodocs files should be named "MCC_<Name>.doc".
-
- - Example code & source: <Name>-Demo & <Name>-Demo.c
-
- - Documentation: <Name>.mcc.doc & <Name>.mcc.guide
-
- - Catalogs: <Name>_mcc.catalog
-
-
- * MCC archives:
-
- Filename: 'MCC_<Name><Version>.lha'
-
- MCC_<Name>/Demos/<Name>-Demo
- MCC_<Name>/Developer/AutoDocs/MCC_<Name>.doc [option]
- MCC_<Name>/Developer/C/Examples/<Name>-Demo.c [option]
- MCC_<Name>/Developer/C/Include/MUI/<Name>_mcc.h [option]
- MCC_<Name>/Developer/Amiga-E/Modules/MUI/<Name>_mcc.e [option]
- MCC_<Name>/Developer/Amiga-E/Examples/<Name>-Demo.e [option]
- MCC_<Name>/Developer/Modula/txt/MCC<Name>.def [option]
- MCC_<Name>/Developer/Modula/txt/MCC<Name>.mod [option]
- MCC_<Name>/Developer/Modula/Demo/<Name>Demo.mod [option]
- MCC_<Name>/Developer/Oberon/txt/MCC<Name>.mod [option]
- MCC_<Name>/Developer/Oberon/examples/<Name>Demo.mod [option]
- MCC_<Name>/Developer/Assembler/Include/MUI/<Name>_mcc.i [option]
- MCC_<Name>/Developer/Assembler/Examples/<Name>-Demo.s [option]
- MCC_<Name>/Developer/Source/... [option]
- MCC_<Name>/Docs/English/<Name>.mcc.doc
- MCC_<Name>/Docs/English/<Name>.mcc.guide
- MCC_<Name>/Docs/.../<Name>.mcc.doc [option]
- MCC_<Name>/Docs/.../<Name>.mcc.guide [option]
- MCC_<Name>/Images/... [option]
- MCC_<Name>/Libs/MUI/<Name>.mcc
- MCC_<Name>/Libs/MUI/<Name>.mcp [option]
- MCC_<Name>/Locale/Catalogs/.../<Name>_mcc.catalog [option]
- MCC_<Name>/Locale/Catalogs/.../<Name>_mcp.catalog [option]
- MCC_<Name>/MCC_<Name>.readme
- MCC_<Name>/MCC-Install [option]
-
- As example take this from Aminet: dev/mui/MCC_Tron0_8.lha
-
-
-